package presentacion;

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JButton;
import javax.swing.JCheckBox;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JTextArea;
import javax.swing.JTextField;

import logica.Aplicacion;
import logica.UsuarioRegistrado;
import dominio.Controlador;

@SuppressWarnings("serial")
public class CrearUsuarioRegistradoJDialog extends javax.swing.JDialog {

	private JLabel Nif;
	private JTextArea jTextArea_areasinteres;
	private JButton crear;
	private JLabel Apellidos;
	private JLabel Usuario;
	private JLabel Intereses;
	private JTextField jTextField_password;
	private JTextField jTextField_nombreusuario;
	private JTextField jTextField_apellidos;
	private JTextField jTextField_nombre;
	private JTextField jTextField_nif;
	private JTextField jTextField_email;
	private JLabel Email;
	private JLabel Password;
	private JLabel Nombre;

	// private Controlador control;
	private JCheckBox jCheckBox1;

	public CrearUsuarioRegistradoJDialog(JFrame frame) {
		super(frame);
		setTitle("Crear Usuario Registrado");
		initGUI();
	}

	private void initGUI() {
		try {
			{
				getContentPane().setLayout(null);
				{
					Nif = new JLabel();
					getContentPane().add(Nif);
					Nif.setText("Nif");
					Nif.setBounds(32, 27, 16, 16);
				}
				{
					Nombre = new JLabel();
					getContentPane().add(Nombre);
					Nombre.setText("Nombre");
					Nombre.setBounds(32, 57, 55, 16);
				}
				{
					Apellidos = new JLabel();
					getContentPane().add(Apellidos);
					Apellidos.setText("Apellidos");
					Apellidos.setBounds(32, 84, 68, 16);
				}
				{
					Usuario = new JLabel();
					getContentPane().add(Usuario);
					Usuario.setText("Usuario");
					Usuario.setBounds(32, 113, 67, 16);
				}
				{
					Password = new JLabel();
					getContentPane().add(Password);
					Password.setText("Password");
					Password.setBounds(195, 113, 65, 16);
				}
				{
					Email = new JLabel();
					getContentPane().add(Email);
					Email.setText("Email");
					Email.setBounds(32, 142, 49, 16);
				}

				{
					jTextField_nif = new JTextField();
					getContentPane().add(jTextField_nif);
					jTextField_nif.setBounds(99, 24, 115, 23);
				}
				{
					jTextField_nombre = new JTextField();
					getContentPane().add(jTextField_nombre);
					jTextField_nombre.setBounds(99, 54, 115, 23);
				}
				{
					jTextField_apellidos = new JTextField();
					getContentPane().add(jTextField_apellidos);
					jTextField_apellidos.setBounds(99, 81, 115, 23);
				}
				{
					jTextField_nombreusuario = new JTextField();
					getContentPane().add(jTextField_nombreusuario);
					jTextField_nombreusuario.setBounds(99, 110, 78, 23);
				}
				{
					jTextField_password = new JTextField();
					getContentPane().add(jTextField_password);
					jTextField_password.setBounds(272, 110, 115, 23);
				}
				{
					Intereses = new JLabel();
					getContentPane().add(Intereses);
					Intereses.setText("Intereses");
					Intereses.setBounds(32, 170, 67, 16);
				}
				{
					crear = new JButton();
					getContentPane().add(crear);
					crear.setText("crear");
					crear.setBounds(301, 168, 106, 45);
					crear.addActionListener(new ActionListener() {
						@Override
						public void actionPerformed(ActionEvent evento) {
							accionCrearUsuario();
						}
					});
				}
				{
					jTextArea_areasinteres = new JTextArea();
					getContentPane().add(jTextArea_areasinteres);
					jTextArea_areasinteres.setBounds(99, 168, 165, 45);
				}
				{
					jTextField_email = new JTextField();
					getContentPane().add(jTextField_email);
					jTextField_email.setBounds(99, 139, 161, 23);
				}
				{
					jCheckBox1 = new JCheckBox();
					getContentPane().add(jCheckBox1);
					jCheckBox1.setText("Alertado");
					jCheckBox1.setBounds(278, 141, 74, 18);
				}
			}
			this.setSize(447, 272);
			this.setLocationRelativeTo(null);
		} catch (Exception e) {
			e.printStackTrace();
		}
	}

	private void accionCrearUsuario() {
		try {
			Controlador.dameControlador().crearUsuarioRegistrado(
					new UsuarioRegistrado(jTextField_nif.getText(), jTextField_nombre.getText(), jTextField_apellidos
							.getText(), jTextField_nombreusuario.getText(), jTextField_password.getText(),
							jTextField_email.getText(), jTextArea_areasinteres.getText(), jCheckBox1.isSelected()));
			this.setVisible(false);
		} catch (Exception e) {
			if (Aplicacion.DEBUG) {
				e.printStackTrace();
			}
			JOptionPane.showMessageDialog(this, e.getMessage(), "Error", JOptionPane.ERROR_MESSAGE);
		}
	}
}
